import { configureStore } from '@reduxjs/toolkit'; // 导入 configureStore 函数，用于创建 Redux store
import rootReducer from '../reducers'; // 导入 rootReducer，它是所有 Reducer 的组合

// 创建 Redux store
const store = configureStore({
  reducer: rootReducer, // 指定 rootReducer 作为 store 的根 Reducer
  middleware: (getDefaultMiddleware) => getDefaultMiddleware({ serializableCheck: false }), // 配置中间件，默认使用 Redux Toolkit 提供的标准中间件
});

// 导出 store 的类型
export type AppDispatch = typeof store.dispatch;
export type RootState = ReturnType<typeof rootReducer>;

export default store; // 将创建的 store 作为默认导出，以便在其他文件中导入和使用